$width: 1090px;

blockquote,
body,
button,
dd,
dl,
dt,
fieldset,
figure,
form,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
input,
legend,
li,
ol,
p,
pre,
td,
textarea,
th,
ul {
    margin: 0;
    padding: 0;
}

body,
button,
input,
select,
textarea {
    outline: 0;
}

a {
    text-decoration: none;
}

ul,
li {
    list-style: none;
}

.container {
    width: $width;
    margin: 0 auto;
}

.empty-box {
    margin: 150px auto 0;
    text-align: center;
    .tip {
        font-size: 16px;
        color: #999;
    }
    .icon {
        height: 180px;
        width: 180px;
        display: inline-block;
    }
}

.btn {
    color: #fff;
    border: 1px solid #b4a078;
    background-color: #b4a078;
}

.tab-box {
    .tab-header {
        background-color: #f5f5f5;
        border-right: 1px solid #e8e8e8;
        border-left: 1px solid #e8e8e8;
        .tab-item {
            width: 125px;
            height: 42px;
            border-top: none;
            border-bottom: none;
            border: 1px solid #e8e8e8;
            border-left: none;
            background-color: #f5f5f5;
            line-height: 40px;
            font-size: 14px;
            &.active {
                border-top: 3px solid #b4a078;
                background-color: #fff;
                border-bottom: 1px solid #fff;
                color: #b4a078;
                height: 44px;
                &:hover {
                    color: #b4a078;
                    background-color: #fff;
                }
            }
            &:hover {
                color: #b4a078;
                background-color: #f5f5f5;
            }
        }
    }
}

header {
    z-index: 2;
    height: 240px;
    .header-top {
        position: relative;
        height: 36px;
        line-height: 36px;
        background-color: #333;
        z-index: 4;
        color: #ccc;
        font-size: 12px;
        .top-left {
            float: left;
            >a {
                float: left;
            }
            .home {
                padding-right: 10px;
            }
        }
        .top-right {
            float: right;
        }
        a {
            color: #ccc;
            &:hover {
                color: #fff;
            }
        }
        .top-item {
            display: inline-block;
            margin-left: 10px;
            position: relative;
            &::before {
                content: '';
                display: inline-block;
                height: 16px;
                border-left: 1px solid #5c5c5c;
                vertical-align: middle;
                margin-right: 10px;
            }
            &:first-child {
                a:nth-child(2) {
                    margin-left: 20px;
                }
                &::before {
                    border: none;
                }
            }
        }
        .top-notice {
            float: left;
            height: 36px;
            overflow: hidden;
            position: relative;
            padding-left: 26px;
            margin-left: 30px;
            .fa {
                position: absolute;
                top: 13px;
                left: 0;
            }
            a,
            .fa {
                color: #b4a078;
            }
        }
    }
    .header-main {
        position: relative;
        height: 204px;
        background-color: #fff;
        box-shadow: 0 0 3px 0 rgba(0,0,0,.2);
        .container {
            position: relative;
            height: 100%;
        }
        .header-logo {
            text-align: center;
            img {
                height: 140px;
            }
        }
        .header-nav {
            line-height: 1;
            font-weight: 700;
            height: 51px;
            width: 100%;
            position: absolute;
            bottom: 0px;
            li {
                display: inline-block;
                margin-top: 6px;
                padding: 0 24px;
                &:hover,
                &.active {
                    >a {
                        border-bottom: 3px solid #b4a078;
                        padding-bottom: 5px;
                    }
                }
            }
            .nav-dropdown {
                display: none;
                position: absolute;
                top: 50px;
                left: 0;
                padding-top: 30px;
                background-color: transparent;
                padding: 20px 40px 30px;
                background: #fff;
                box-shadow: 0 0 1px 1px rgba(0,0,0,.1);
                z-index: 9;
            }
            .nav-column {
                margin-right: 34px;
                display: inline-block;
                vertical-align: top;
            }
            .nav-title {
                margin-bottom: 10px;
                font-size: 16px;
                font-weight: 700;
                line-height: 36px;
                width: 140px;
                border-bottom: 1px solid #ddd;
            }
            .nav-item {
                margin-bottom: 4px;
                font-weight: 400;
                line-height: 50px;
                img {
                    height: 50px;
                    width: 50px;
                    border: 0;
                    vertical-align: top;
                }
                span {
                    display: inline-block;
                    width: 84px;
                    max-width: 84px;
                    max-height: 48px;
                    margin-left: 6px;
                    font-size: 14px;
                    vertical-align: middle;
                    line-height: 1.2;
                    overflow: hidden;
                }
            }
        }
        .header-search {
            position: absolute;
            top: 64px;
            right: 64px;
            width: 287px;
            height: 30px;
            .fa {
                font-size: 30px;
                color: #b4a078;
                vertical-align: middle;
            }
            input {
                height: 30px;
                line-height: 30px;
                border: 0;
                border-bottom: 1px solid #D8CEBC;
                font-size: 16px;
                width: 252px;
                outline: 0;
            }
        }
        .header-cart {
            position: absolute;
            cursor: pointer;
            width: 34px;
            height: 32px;
            top: 65px;
            right: 9px;
            .cart-num {
                position: absolute;
                top: -7px;
                right: -5px;
                color: #fff;
                text-align: center;
                line-height: 20px;
                z-index: 1;
                height: 19px;
                width: 19px;
                background: #f00;
                border-radius: 50%;
                display: block;
                font-style: normal;
            }
            .fa {
                font-size: 30px;
                color: #b4a078
            }
            .cart-dialog {
                position: absolute;
                right: -19px;
                top: 30px;
                z-index: 9;
                padding-top: 10px;
                padding-right: 0px;
                overflow: visible;
                width: 330px;
                height: 328px;
                border: 1px solid #b5a176;
                border-top: 2px solid #d7ccb6;
                background-color: #fff;
                display: none;
                .dialog-body {
                    margin: 14px 0 0;
                    height: 245px;
                    overflow: auto;
                    .cart-item {
                        display: grid;
                        grid-template-columns: 60px 5fr 2fr 30px;
                        height: 70px;
                        grid-gap: 10px;
                        padding: 0 0 10px 15px;
                        .thumb {
                            img {
                                width: 100%;
                                height: 60px;
                            }
                        }
                        .name {
                            font-size: 14px;
                            line-height: 14px;
                            padding: 12px 0 11px;
                            white-space: nowrap;
                            overflow: hidden;
                            text-overflow: ellipsis;
                            width: 160px;
                        }
                        .count,
                        .attr {
                            color: #999;
                            font-size: 11px;
                            line-height: 12px;
                        }
                        .attr {
                            max-width: 84px;
                            white-space: nowrap;
                            overflow: hidden;
                            text-overflow: ellipsis;
                        }
                        .price {
                            text-align: right;
                            font-size: 11px;
                            color: #b62628;
                            margin-top: 14px;
                            line-height: 11px;
                        }
                        .fa-times {
                            margin-top: 14px;
                            font-size: 16px;
                            word-spacing: normal;
                            letter-spacing: normal;
                        }
                    }
                }
                .dialog-footer {
                    height: 66px;
                    background-color: #f4f0ea;
                    position: absolute;
                    bottom: 0;
                    width: 100%;
                    .total {
                        font-size: 14px;
                        line-height: 20px;
                        padding: 12px 0 0 15px;
                        color: #BE4141;
                        float: left;
                        span {
                            display: block;
                            &:first-child {
                                color: #999;
                            }
                        }
                    }
                    .btn {
                        float: right;
                        margin-right: 31px;
                        color: #fff;
                        border: 1px solid #b4a078;
                        background-color: #b4a078;
                        width: 110px;
                        height: 36px;
                        line-height: 36px;
                        margin-top: 15px;
                        font-size: 12px;
                        padding: 0;
                        text-align: center;
                    }
                }
            }
        }
        &.top-fixed {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 60px;
            z-index: 6;
            .container {
                display: grid;
                grid-template: 60px / 105px 1fr 60px 60px;
            }
            .header-logo {
                img {
                    max-width: 100%;
                    height: 100%;
                    margin: 0 auto;
                }
            }
            .header-nav,
            .header-cart,
            .header-search {
                position: relative;
                margin-top: 16px;
                top: 0;
            }
            .header-nav {
                .nav-dropdown {
                    top: 43px;
                }
            }
            .header-cart {
                right: -10px;
            }
            .header-search {
                right: -16px;
                background-color: #fff;
                input {
                    display: none;
                }
                &.expanded {
                    right: 242px;
                    input {
                        display: inline-block;
                    }
                }
            }
        }
    }
    &.user-header {
        height: 136px;
        .header-main {
            height: 100px;
            padding-top: 25px;
            .container {
                display: grid;
                grid-template: 50px / 180px 1fr;
                grid-gap: 20px;
            }
            .header-logo {
                img {
                    max-width: 100%;
                    height: 100%;
                    margin: 0 auto;
                }
            }
            .header-title {
                font-size: 35px;
                font-weight: 700;
                color: #b4a078;
                border-left: 1px solid #b4a078;
                padding-left: 20px;
            }
            &.top-fixed { 
                padding-top: 5px;
                height: 60px;
            }
        }
    }
}

.banner {
    z-index: 1;
    .slider {
        .slider-point {
            right: 49%;
            bottom: 10px;
            li {
                margin: 0 8px;
                span {
                    display: none;
                }
            }
        }
    }
}

.floor {
    .floor-header {
        padding-top: 13px;
        margin-top: 30px;
        padding-bottom: 20px;
        h3 {
            font-size: 28px;
            font-weight: 700;
            line-height: 1;
            display: inline-block;
            margin-right: 20px;
        }
        small {
            padding-top: 13px;
            display: inline-block;
            line-height: 1;
        }
        .header-right {
            float: right;
            padding-top: 8px;
            a {
                &:last-child {
                    margin-left: 20px;
                }
            }
        }
    }
    .floor-grid {
        display: grid;
        height: 320px;
        grid-template: 1fr 1fr / 1fr 1fr 1fr;
        grid-gap: 9px;
        a {
            position: relative;
            padding-left: 20px;
            &:first-child,
            &:nth-child(2) {
                grid-row: 1/3;
                text-align: center;
                padding-left: 0;
            }
            .name {
                font-size: 24px;
                margin: 48px 0 19px;
                line-height: 1;
                border-right: 0;
                border-left: 0;
                z-index: 3;
                position: relative;
            }
            .price {
                font-size: 14px;
                padding-top: 17px;
                display: inline-block;
                width: auto;
                border-top: 1px solid #666;
                z-index: 3;
                position: relative;
            }
            img {
                width: 100%;
                height: 100%;
                top: 0;
                left: 0;
                position: absolute;
                text-align: center;
                transition: transform 1s;
                z-index: 1;
            }
        }
    }
    .slider-goods {
        
    }
    .first-goods-list {
        display: grid;
        height: 530px;
        grid-template: 1fr 1fr/1.75fr 1fr 1fr 1fr;
        grid-gap: 10px;
        a {
            position: relative;
            text-align: center;
            background: #fff;
            &:first-child {
                grid-row: 1/3;
                .thumb {
                    width: 390px;
                    height: 360px;
                    img {
                        width: 320px;
                        height: 320px;
                        margin: 20px 35px;
                    }
                }
                .name {
                    margin-bottom: 13px;
                    font-size: 18px;
                    padding-top: 20px;
                }
            }
            .thumb {
                width: 180px;
                height: 180px;
            }
            .name {
                border-top: 1px solid #F4F0EA;
                padding-top: 10px;
            }
        }
    }
    &.floor-out {
        background: #f4f0ea;
        padding: 30px 0;
    }
    .slider {
        .slider-previous, 
        .slider-next {
            background: #D0C4AF;
            padding-bottom: 5px;
        }
        .slider-next {
            right: -50px;
        }
        .slider-previous {
            left: -50px;
        }
    }
}

.goods-item {
    text-align: center;
    .thumb {
        width: 265px;
        height: 265px;
        margin: 0 auto;
        img {
            width: 100%;
            height: 100%;
        }
    }
    .name {
        padding: 0 10px;
    }
}

.item-hover {
    &:hover {
        box-shadow: 1px 1px 8px rgba(0,0,0,.2);
        background-color: #f4f0ea;
    }
}

.category-floor {
    .goods-list {
        display: grid;
        grid-template: 355px / repeat(4, 1fr);
        grid-gap: 10px;
    }
}
.comment-floor {
    .goods-item {
        position: relative;
        .thumb {
            width: 367px;
            height: 367px;
        }
        .comment-item {
            position: absolute;
            padding: 20px 15px;
            bottom: 0;
            background: #fff;
            width: 340px;
            min-height: 180px;
            left: 50%;
            margin-left: -170px;
            overflow: hidden;
            .item-top {
                color: #999;
                font-size: 13px;
                line-height: 1;
                margin-bottom: 12px;
                span {
                    margin-right: 10px;
                }
            }
            .item-middle {
                margin-bottom: 16px;
                .name {
                    max-width: 190px;
                    font-size: 16px;
                    height: 16px;
                    overflow: hidden;
                    text-align: left;
                    text-overflow: ellipsis;
                    white-space: nowrap;
                }
                .price {
                    margin-right: 15px;
                    color: #b4a078;
                    float: right;
                }
            }
        }
    }
}

.path {
    font-size: 12px;
    color: #333;
    line-height: 1;
    padding-top: 20px;
    padding-bottom: 20px;
}

.category-page {
    background: #f5f5f5;
    padding-bottom: 80px;

}

.goods-area {
    padding: 0 40px;
    position: relative;
    background-color: #fff;
    .filter-box {
        display: grid;
        grid-template-columns: 100px 1fr;
        padding-top: 20px;
        >div {
            border-bottom: 1px dashed #dedede;
            line-height: 50px;
            a {
                margin-right: 30px;
                margin-bottom: 16px;
                font-size: 14px;
                color: #333;
                &.active {
                    color: #b4a078;
                }
            }
        }
    }
    .category-header {
        text-align: center;
        margin-bottom: 40px;
        .title {
            font-size: 24px;
            font-weight: 700;
            line-height: 44px;
        }
    }
    .goods-list {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        grid-gap: 10px;
        .goods-item {
            text-align: center;
            margin-bottom: 50px;
            .thumb {
                width: 245px;
                height: 245px;
                margin: 0 auto;
                img {
                    width: 100%;
                    height: 100%;
                }
            }
            .name {
                padding: 0 10px;
                margin-top: 20px;
                margin-bottom: 4px;
                color: #333;
            }
            .desc {
                border-top: 1px solid #e8e8e8;
                padding: 14px;
                color: #999;
            }
        }
    }
}

.panel {
    border: 1px solid #e8e8e8;
    .panel-header {
        height: 44px;
        line-height: 44px;
        font-size: 17px;
        position: relative;
        background-color: #f5f5f5;
    }
    .panel-body {
    }
}

.history-panel {
    .panel-header {
        padding: 0 20px;
        .pull-right {
            float: right;
        }
    }
    .panel-body {
        padding: 20px 30px 0;
    }
    .date-header {
        margin-bottom: 23px;
        line-height: 28px;
        color: #b4a078;
        .day {
            font-size: 26px;
        }
        .time {
            font-size: 18px;
            vertical-align: bottom;
            margin-left: 6px;
        }
        .day-box {
            padding-right: 6px;
            background-color: #fff;
            display: inline-block;
        }
        .line {
            position: absolute;
            z-index: -1;
            width: 828px;
            margin-top: -7px;
            border-bottom: 1px solid #ddd;
        }
    }
    
}

.connect-item {
    margin: 0 30px;
    padding: 28px 0;
    border-bottom: 1px dashed #e8e8e8;
    display: grid;
    grid-template-columns: 1fr 100px;
}
.form-table {
    .input-group {
        margin-bottom: 20px;
        .avatar-input {
            cursor: pointer;
            width: 70px;
            height: 70px;
            position: relative;
            img {
                width: 100%;
                height: 100%;
            }
            .fa {
                position: absolute;
                bottom: 5px;
                right: 5px;
            }
        }
    }
}

.account-box {
    .account-tip {
        padding-top: 25px;
        color: #999;
        font-size: 12px;
        text-align: right;
    }
    .account-header {
        padding: 25px;
        display: grid;
        grid-template-columns: 1fr 150px 150px;
        .money {
            font-size: 50px;
        }
        p {
            font-size: 12px;
            line-height: 26px;
        }
        .btn {
            display: block;
            text-align: center
        }
    }
}

.message-box {
    display: grid;
    grid-template-columns: 250px 1fr;
    .message-menu {
        background-color: #e0f0fd;
    }
    .menu-item {
        padding: 12px 18px 12px 16px;
        display: grid;
        grid-template-columns: 80px 1fr;
        .icon {
            width: 51px;
            height: 51px;
            border-radius: 25.5px;
            background-color: #ccc;
            font-size: 30px;
            text-align: center;
            line-height: 50px;
        }
        .info {
            .name {
                color: #000;
                font-weight: 700;
            }
            p {
                color: #676d70;
            }
        }
        &:hover {
            background-color: #fff;
        }
        &.active {
            background-color: #fff;
            border-left: 4px solid #d75650;
        }
    }
}

.coupon-page {
    .coupon-item {
        width: 378px;
        margin: 0 25px 20px 0;
        height: 145px;
        display: inline-grid;
        grid-template-columns: 144px 1fr 52px;
        border: 1px solid #f2f2f2;
        background: #fff;
        box-shadow: 0 10px 20px 0 rgba(0,0,0,.04);
        .thumb {
            width: 104px;
            height: 104px;
            margin: 20px;
            border: 1px solid #f1f2f6;
            img {
                width: 100%;
                height: 100%;
            }
        }
        .price {
            margin-bottom: 5px;
            em {
                font-style: normal;
                font-size: 34px;
                color: #BE4141;
                vertical-align: top;
            }
            .limit {
                color: #BE4141;
                font-size: 12px;
                margin: 12px 0 0 10px;
                vertical-align: bottom;
                background: #fff4ec;
            }
        }
        .range {
            font-size: 12px;
            font-weight: 700;
        }
        .action {
            background-color: #BE4141;
            a {
                position: relative;
                display: block;
                top: 25px;
                width: 20px;
                margin: 0 auto;
                font-size: 16px;
                color: #fff;
            }
        }
    }
}


.goods-item.goods-action {
    display: inline-block;
    position: relative;
    .thumb {
        width: 200px;
        height: 200px;
    }
    .fa-times {
        display: none;
        position: absolute;
        top: 0;
        right: 0;
        width: 24px;
        height: 24px;
        background-color: #ccc;
        font-size: 24px;
        z-index: 9;
        cursor: pointer;
    }
    .name {
        font-weight: 700;
    }

    .action {
        text-align: center;
        .btn {
            margin: 0;
            font-size: 12px;
            line-height: 26px;
            padding: 0;
            width: 90px;
            color: #333;
            background: #F5F5F5;
            border: 1px solid #ddd;
        }
    }
    &:hover {
        .fa-times {
            display: block;
        }
    }
}

.help-panel {
    width: 890px;
    border: 1px solid #e8e8e8;
    padding: 25px 40px;
    text-align: justify;
    .panel-header {
        font-size: 18px;
        border: none;
        border-bottom: 1px dashed #e8e8e8;
        padding-bottom: 25px;
        height: auto;
        background-color: transparent;
    }
    ul {
        padding: 0px 0px 0px 20px;
    }
    li {
        box-sizing: border-box;
        margin: 20px 0px 0px;
        list-style-type: decimal;
    }
    .answer {
        box-sizing: border-box;
        color: rgb(153, 153, 153);
    }
}

.number-box {
    float: left;
    border: 1px solid #ddd;
    display: grid;
    grid-template: 36px / 36px 60px 36px;
    .fa {
        border-right: 1px solid #ddd;
        line-height: 38px;
        background: #fff;
        text-align: center;
        &:last-child {
            border-left: 1px solid #ddd;
        }
    }
    .number-input {
        box-sizing: border-box;
        border-radius: 0;
        border: 0;
        margin: 0;
        font-size: 12px;
        text-align: center;
        color: #333;
        height: 36px;
        line-height: 36px;
        background: #fff;
    }
}

.goods-page {
    .panel {
        margin-top: 40px;
        height: 377px;
        border: 1px solid #e8e8e8;
        .panel-body {
            padding: 12px 79px 0;
            .slider {
                .slider-previous, 
                .slider-next {
                    background: #D0C4AF;
                    padding-bottom: 5px;
                }
                .slider-next {
                    right: -50px;
                }
                .slider-previous {
                    left: -50px;
                }
            }
        }
        .goods-item {
            margin-right: 30px;
            .thumb {
                width: 210px;
                height: 210px;
            }
        }
    }
    .info-box {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap: 40px;
        .intro {
            margin-bottom: 20px;
            position: relative;
            .name {
                font-size: 20px;
                font-weight: 700;
                line-height: 20px;
                margin-bottom: 7px;
                padding-right: 60px;
            }
            .desc {
                width: 300px;
                font-size: 14px;
                line-height: 20px;
                color: #999;
            }
            .comment {
                display: inline-block;
                position: absolute;
                top: 0;
                right: 0;
                line-height: 1.2;
                text-align: right;
                z-index: 1;
                color: #333;
                span {
                    font-size: 13px;
                    display: block;
                    &:first-child {
                        color: #E36844;
                        font-size: 20px;
                        margin-bottom: 7px;
                    }
                }
            }
        }
        .price-box {
            display: grid;
            background-color: #f5f3ef;
            border-top: 1px dotted #dedede;
            border-bottom: 1px dotted #dedede;
            padding: 10px 16px 13px;
            line-height: 24px;
            font-size: 13px;
            grid-template-columns: 55px 1fr;
            >div {
                line-height: 28px;
            }
            hr {
                grid-column: 1/3;
                margin: 10px 0;
                overflow: hidden;
                border: none;
                height: 1px;
                border-bottom: 1px dashed #d2d2d2;
            }
            .price {
                font-size: 28px;
                line-height: 30px;
                margin-left: 2px;
                color: #d7282d;
            }
        }
        .property-box {
            display: grid;
            padding: 10px 16px 13px;
            line-height: 24px;
            font-size: 13px;
            grid-template-columns: 55px 1fr;
        }
        .actions { 
            margin-left: 12px;
            margin-top: 30px;
            .btn {
                width: 168px;
                height: 50px;
                line-height: 50px;
                font-size: 18px;
                color: #b4a078;
                border: 1px solid #b4a078;
                background-color: #f5f3ef;
                text-align: center;
                &.btn-primary {
                    color: #fff;
                    border: 1px solid #b4a078;
                    background-color: #b4a078;
                }
                &:hover {
                    color: #fff;
                    border: 1px solid #c0ae8a;
                    background-color: #c0ae8a;
                }
                &.btn-collect {
                    height: 49px;
                    width: 50px;
                    line-height: 23px;
                    font-size: 13px;
                    padding: 8px 0 0;
                    text-align: center;
                    .fa {
                        display: block;
                    }
                }
            }
        }
    }
    .picture-box {
        .view {
            position: relative;
            float: left;
            width: 430px;
            height: 430px;
            border: 1px solid #e8e8e8;
            margin-right: 16px;
            img {
                display: block;
                width: 428px;
                height: 428px;
                background-color: #f4f4f4;
            }
        }
        ul {
            float: right;
            overflow: hidden;
            position: relative;
            li {
                zoom: 1;
                width: 78px;
                height: 78px;
                overflow: hidden;
                margin-bottom: 10px;
                vertical-align: top;
                img {
                    display: block;
                    width: 100%;
                    height: 100%;
                    background-color: #f4f4f4;
                }
                &.active {
                    border: 3px solid #b4a078;
                }
            }
        }
    }
    .detail-box {
        margin-top: 30px;
        display: grid;
        grid-template-columns: 1fr 300px;
        grid-gap: 40px;
        .tab-box {
            .content-box {
                img {
                    width: 100%;
                    display: inherit;
                }
            }
            
        }
        .panel {
            height: auto;
            margin: 0;
            .panel-header {
                text-align: center;
            }
            .panel-body {
                padding: 0;
            }
        }
        .goods-item {
            display: block;
            margin-top: 24px;
            margin-left: 24px;
            margin-right: 24px;
            &:not(:last-of-type) {
                border-bottom: 1px solid #e8e8e8;
            }
            .thumb {
                width: 250px;
                width: 250px;
            }
            .price {
                padding-bottom: 15px;
            }
        }
        .issue-box {
            padding: 40px 50px 20px;
            border: 1px solid #e8e8e8;
            border-top: none;
            font-size: 14px;
        }
        .issue {
            padding-bottom: 32px;
            .question {
                line-height: 1;
                padding-bottom: 8px;
            }
            .answer {
                line-height: 18px;
                color: #999;
            }
        }
    }

    .comment-box {
        padding-top: 27px;
        border: 1px solid #e8e8e8;
        border-top: none;
        .score {
            margin-bottom: 10px;
            .light {
                color: red;
            }
        }
        .comment-header {
            display: grid;
            grid-template-columns: 126px 1fr;
            grid-gap: 15px;
            .rate {
                font-size: 36px;
                color: #E36844;
                line-height: 36px;
                margin-bottom: 8px;
            }
            .tag-box {
                span {
                    display: inline-block;
                    margin: 0 10px 10px 0;
                    padding: 0 7px 0 16px;
                    line-height: 26px;
                    border-radius: 100px;
                    background-color: #F5F3EF;
                    cursor: pointer;
                    &.active {
                        background-color: #b4a078;
                        color: #fff;
                    }
                }
            }
        }
        .comment-filter {
            margin: 10px 23px 0 30px;
            border-bottom: 1px solid #eaeaea;
            overflow: hidden;
            border-top: 1px dashed #dedede;
            padding: 20px 0;
            span {
                font-size: 14px;
                color: #999;
                margin-right: 28px;
            }
            a {
                margin-right: 30px;
                font-size: 14px;
                &.active {
                    color: #b4a078;
                }
            }
        }
        .comment-item {
            display: grid;
            grid-template-columns: 70px 1fr;
            grid-gap: 20px;
            padding: 27px 0 30px;
            margin-left: 30px;
            margin-right: 23px;
            border-bottom: 1px dashed #e8e8e8;
            min-height: 110px;
            .user-box {
                text-align: center;
                .avatar {
                    width: 50px;
                    height: 50px;
                    margin: 0 auto;
                    img {
                        width: 100%;
                        height: 100%;
                    }
                }
                .name {
                    margin-top: 12px;
                    height: 18px;
                    line-height: 18px;
                }
            }
            .score {
                margin-bottom: 10px;
            }
            .attr {
                color: #999;
                line-height: 1;
                padding-bottom: 10px;
            }
            .content {
                line-height: 20px;
                font-size: 14px;
                color: #333;
                margin-bottom: 10px;
                word-break: break-word;
            }
            .image-box {
                margin-bottom: 10px;
                li {
                    display: inline-block;
                    width: 60px;
                    height: 60px;
                    margin-right: 10px;
                    list-style-type: none;
                    width: 140px;
                    height: 140px;
                    img {
                        margin: auto;
                        max-height: 100%;
                        max-width: 100%;
                    }
                }
            }
            &:last-of-type {
                border-bottom: 0;
            }
        }
    }
}

.cart-page {
    .empty-cart-box {
        margin-top: 10px;
        position: relative;
        border: 1px solid #ddd;
        height: 400px;
        text-align: center;
        padding-top: 150px;
        p {
            font-size: 50px;
            color: #ccc;
            line-height: 100px;
        }
    }
    .cart-header {
        display: grid;
        grid-template-columns: 120px 1fr 180px 170px 150px 120px;
        margin-top: 10px;
        margin-bottom: 20px;
        padding: 12px 0;
        border: 1px solid #ddd;
        background-color: #f5f5f5;
        text-align: center;
        .chkbox {
            text-align: left;
            padding-left: 23px;
        }
    }
    .cart-group-item {
        border: 1px solid #ddd;
        margin-bottom: 10px;
        .group-header {
            padding-left: 60px;
            padding-right: 30px;
            height: 43px;
            border-bottom: 1px solid #eaeaea;
            line-height: 42px;
            color: #666;
        }
    }
    .cart-item {
        display: grid;
        grid-template-columns: 59px 98px 1fr 180px 170px 150px 120px;
        padding: 20px 0;
        .chk {
            text-align: center;
            padding-top: 40px;
        }
        .thumb {
            img {
                width: 98px;
                height: 98px;
            }
        }
        .attr {
            color: #999;
            padding-top: 9px;
            line-height: 16px;
            text-align: left;
            font-size: 13px;
            cursor: pointer;
        }
        .total,
        .price {
            padding-top: 10px;
            text-align: center;
        }
        .number-box {
            grid-template: 24px / 24px 58px 24px;
            margin: 10px 31px 0 0;
            .fa {
                line-height: 27px;
            }
            .number-input {
                line-height: 24px;
                height: 24px;
            }
        }
        .actions {
            padding-left: 31px;
            a {
                display: block;
            }
        }
    }
    .cart-footer {
        display: grid;
        grid-template-columns: 1fr 228px 244px 139px;
        margin-bottom: 40px;
        font-size: 14px;
        position: relative;
        background-color: #f5f5f5;
        border: 1px solid #ddd;
        height: 70px;
        .chkbox {
            padding: 25px 23px 0;
        }
        .total {
            display: grid;
            grid-template: 25px 25px / 67px 1fr;
            padding: 6px 30px 0;
            border-right: 1px solid #ddd;
            line-height: 33px;
            .price {
                text-align: right;
            }
        }
        .money {
            padding: 12px 30px 0;
            .price {
                font-size: 22px;
                line-height: 22px;
                font-weight: 700;
                color: #BE4141;
            }
            .tip {
                margin-top: 5px;
            }
        }
        .checkout {
            color: #fff;
            border: 1px solid #c0ae8a;
            background-color: #c0ae8a;
            line-height: 65px;
            font-size: 18px;
            text-align: center;
            .btn {
                background-color: transparent;
            }
        }
    }
    .panel {
        margin-top: 40px;
        height: 377px;
        border: 1px solid #e8e8e8;
        .panel-header {
            padding-left: 22px;
            line-height: 44px;
            font-size: 17px;
        }
        .panel-body {
            padding: 12px 79px 0;
            .slider {
                .slider-previous, 
                .slider-next {
                    background: #D0C4AF;
                    padding-bottom: 5px;
                }
                .slider-next {
                    right: -50px;
                }
                .slider-previous {
                    left: -50px;
                }
            }
        }
        .goods-item {
            margin-right: 30px;
            .thumb {
                width: 210px;
                height: 210px;
            }
        }
    }
}

.side-box {
    display: grid;
    grid-template-columns: 180px 1fr;
    grid-gap: 20px;
}

.article-page {
    .article-box {
        .nav {
            li {
                height: 43px;
                font-size: 14px;
                text-align: center;
                line-height: 43px;
                border: 1px solid #e8e8e8;
                &.active {
                    background-color: #f5f5f5;
                    color: #b4a078;
                }
            }
        }
        .main {
            border: 1px solid #e8e8e8;
            padding: 25px 40px;
            text-align: justify;
            margin-bottom: 80px;
            .title {
                font-size: 18px;
                border-bottom: 1px dashed #e8e8e8;
                padding-bottom: 25px;
            }
            .content {
                margin-top: 35px;
            }
        }
    }
}

.menu-box {
    border: 1px solid #eaeaea;
    padding-top: 24px;
    width: 180px;
    .menu-group {
        color: #333;
        margin-bottom: 40px;
        .menu-name {
            padding-left: 43px;
            font-size: 16px;
            color: #333;
            font-weight: 700;
            line-height: 18px;
            margin: 16px 0;  
        }
        li {
            a {
                font-size: 14px;
                display: block;
                padding-left: 41px;
                border-left: 2px solid #fff;
                border-right: 2px solid #fff;
                line-height: 18px;
                margin: 16px 0;  
            }
            &.active {
                a {
                    color: #b4a078;
                    border-left-color: #BEA988;
                }
            }
        }
    }
}

.user-page {
    padding: 20px 0 30px;
    .user-box {
        background-color: #f1f1f1;
        display: grid;
        grid-template-columns: 4fr 5fr;
        padding: 40px 60px;
        border: 1px solid #eaeaea;
    }
    .user-info {
        display: grid;
        grid-template-columns: 76px 1fr;
        grid-gap: 30px;
        .grade-box {
            grid-column: 1/3;
        }
    }
    .count-info {
        display: grid;
        grid-template-columns: 80px 1fr 80px 1fr;
        grid-gap: 20px;
        padding: 3px 0 3px 50px;
        border-left: 1px dashed rgba(180,160,120,.38);
    }
}

.address-dialog {
    width: 697px;
    height: 283px;
    .dialog-body {
        height: 202px;
    }
    .address-body {
        display: grid;
        grid-template-columns: 77px 1fr 77px 1fr;
        grid-gap: 20px;
        div {
            &:nth-child(2),
            &:nth-child(4) {
                grid-column: 2/5;
            }
            &:nth-child(odd) {
                font-size: 14px;
                line-height: 34px;
                text-align: right;
            }
        }
        select {
            width: 170px;
            font-size: 14px;
            line-height: 14px;
            border: 1px solid #ddd;
            border-radius: 0;
            background-color: #fff;
            height: 34px;
            color: #333;
        }
        textarea {
            height: 70px;
            background-color: #fff;
            padding: 9px;
            width: 530px;
            font-size: 14px;
            line-height: 14px;
            border: 1px solid #ddd;
            border-radius: 2px;
            color: #333;
            resize: vertical;
        }
        input {
            width: 200px;
            height: 34px;
            font-size: 14px;
            line-height: 28px;
            border: 1px solid #ddd;
            padding-left: 9px;
        }
    }
    .dialog-footer {
        >div:first-child {
            position: absolute;
            left: 97px;
            line-height: 40px;
        }
    }
}

.address-row {
    display: grid;
    grid-template-columns: 120px 1fr 170px 140px 140px;
    height: 100px;
    text-align: center;
    word-wrap: break-word;
    word-break: break-all;
    line-height: 100px;
    .btn {
        color: #b4a078;
        border: 1px solid #b4a078;
        background-color: #f5f3ef;
        padding: 0 20px;
    }
    &.row-header {
        background-color: #f5f5f5;
        text-align: center;
        font-weight: 400;
        height: 43px;
        line-height: 43px;
        color: #999;
        border-bottom: 1px solid #e8e8e8;
    }
    &:hover {
        background-color: #f5f5f5;
    }
}

.address-box {
    .header {
        line-height: 40px;
        a {
            float: right;
        }
    }
}

.un-order-box {
    margin-top: 20px;
    .panel-header {
        a {
            float: right;
        }
    }
}

.order-address {
    display: grid;
    grid-template-columns: 1fr 280px;
    padding: 23px 20px 30px;
    .order-total {
        display: grid;
        grid-template-columns: 1fr 1fr;
        >div {
            text-align: right;
            margin-bottom: 10px;
            line-height: 20px;
        }
        .hr {
            grid-column: 1/3;
            border-top: 1px dashed #ddd;
            margin: 30px 0;
        }
    }
    .address-box {
        >div {
            margin-bottom: 10px;
            line-height: 20px;
        }
        .tip {
            font-size: 14px;
            margin-top: 40px;
            margin-bottom: 10px;
        }
    }
}

.order-search {
    display: grid;
    grid-template-columns: 1fr 290px;
    margin-bottom: 14px;
    .search-box {
        margin-top: 10px;
        font-size: 13px;
        input {
            width: 240px;
            height: 28px;
            border: 1px solid #ddd;
            display: inline-block;
            float: left;
            padding-left: 12px;
        }
        button {
            width: 51px;
            height: 28px;
            margin-left: -1px;
            border: 1px solid #ddd;
            border-radius: 0;
            display: inline-block;
            float: left;
        }
    }
}

.coupon-search {
    margin-bottom: 20px;
    .search-box {
        font-size: 13px;
        display: inline-block;
        input {
            width: 240px;
            height: 28px;
            border: 1px solid #ddd;
            display: inline-block;
            padding-left: 12px;
        }
        button {
            width: 51px;
            height: 28px;
            margin-left: -1px;
            border: 1px solid #ddd;
            border-radius: 0;
            display: inline-block;
        }
    }
    .btn {
        float: right;
        color: #fff;
        border: 1px solid #c0ae8a;
        background-color: #c0ae8a;
        height: 32px;
        line-height: 32px;
        font-size: 14px;
    }
}

.coupon-box {
    li {

    }
    .coupon-info {
        height: 89px;
        padding-top: 26px;
        display: grid;
        grid-template-columns: 112px 1fr;
        .money {
            height: 36px;
            overflow: hidden;
            text-align: center;
            line-height: 1.2;
            font-size: 36px;
        }
    }
    .coupon-tip {
        .full {
            display: none;
        }
    }
}

.order-tab {
    border-bottom: 2px solid #eaeaea;
    display: inline-block;
    a {
        display: inline-block;
        padding: 10px 0;
        height: 40px;
        font-weight: 900;
        font-size: 18px;
        color: #333;
        margin-bottom: -2px;
        width: 110px;
        text-align: center;
        em {
            font-style: normal;
            font-size: 12px;
        }
        &.active {
            border-bottom: 2px solid #b4a078;
        }
    }
}

.order-item-header {
    display: grid;
    grid-template-columns: 300px 1fr 40px;
}

.order-item {
    display: grid;
    grid-template-columns: 100px 1fr 130px 130px 130px;
    padding: 20px 0;
    text-align: center;
    .goods-img {
        img {
            width: 100px;
            height: 100px;
        }
    }
    .name {
        margin-top: 20px;
        text-align: left;
    }
    .status,
    .actions {
        a {
            display: block;
        }
    }
}

.has-bottom-border {
    border-bottom: 1px dashed #ddd;
}

.pay-result-page {
    .pay-success,
    .pay-failure {
        margin: 40px 0;
        text-align: center;
        min-height: 40vh;
        .red {
            color: red;
        }
        .fa-check-circle {
            color: rgb(0, 178, 78);
            font-size: 50px;
            margin: 20px 0;
        }
        p {
            margin-bottom: 40px;
        }
        .fa-times-circle {
            color: rgb(208, 127, 13);
            font-size: 50px;
            position: relative;
            top: 10px;
        }
        h2 {
            line-height: 50px;
            position: relative;
            margin: 40px 0 30px;
        }
    }
}

.cashier-page {
    .container {
        .panel {
            margin: 40px 0;
            .panel-header,
            .panel-body {
                padding: 0 20px;
            }
            
        }
        
    }
    .address-view {
        display: grid;
        grid-template-columns: 1fr 252px;
        padding: 30px 0;
        .right {
            border-left: 1px solid #e8e8e8;
            margin-top: 44px;
            p {
                text-align: center;
            }
        }
    }
    .address-edit {
        display: grid;
        grid-template-columns: 1fr 360px;
        .edit-body {
            display: grid;
            grid-template-columns: 77px 1fr 77px 1fr;
            grid-gap: 20px;
            div {
                &:nth-child(2),
                &:nth-child(4) {
                    grid-column: 2/5;
                }
                &:nth-child(odd) {
                    font-size: 14px;
                    line-height: 34px;
                    text-align: right;
                }
            }
            select {
                width: 170px;
                font-size: 14px;
                line-height: 14px;
                border: 1px solid #ddd;
                border-radius: 0;
                background-color: #fff;
                height: 34px;
                color: #333;
            }
            textarea {
                height: 70px;
                background-color: #fff;
                padding: 9px;
                width: 530px;
                font-size: 14px;
                line-height: 14px;
                border: 1px solid #ddd;
                border-radius: 2px;
                color: #333;
                resize: vertical;
            }
            input {
                width: 200px;
                height: 34px;
                font-size: 14px;
                line-height: 28px;
                border: 1px solid #ddd;
                padding-left: 9px;
            }
        }
        .edit-right {
            border-left: 1px solid #e8e8e8;
            padding: 44px 0 0 20px;
            .btn {
                color: #fff;
                border: 1px solid #b4a078;
                background-color: #b4a078;
                width: 144px;
                height: 42px;
                line-height: 40px;
                font-size: 16px;
                border-radius: 2px;
            }
            .btn-cancel {
                color: #b4a078;
                border: 1px solid #b4a078;
                background-color: #f5f3ef;
            }
        }
    }
    .panel-footer {
        padding: 20px 40px 40px 50px;
        background-color: #f5f5f5;
        border: 1px solid #e8e8e8;
        border-top: 0;
        display: grid;
        grid-template-columns: 1fr 1fr;
        >div {
            min-height: 82px;
            border-bottom: 1px solid #e7e7e7;
        }
        .invoice-box {
            grid-column: 1/3;
            line-height: 21px;
            overflow: hidden;
        }
        .amount-box,
        .checkout-footer {
            margin-left: 100px;
            text-align: right;
        }
        .checkout-footer {
            grid-column: 1/3;
            .amount-box {
                .price {
                    min-width: 100px;
                    display: inline-block;
                }
            }
            .btn {
                color: #fff;
                border: 1px solid #b4a078;
                background-color: #b4a078;
                width: 168px;
                height: 50px;
                line-height: 50px;
                font-size: 18px;
                text-align: center;
                margin: 0;
            }
        }
    }
    .order-pay-tip {
        padding-top: 20px;
        line-height: 40px;
        font-size: 20px;
        .primary-tip {
            color: #0f0;
        }
    }
    .pay-btn {
        text-align: right;
    }
}

.dialog-box {
    .address-item {
        position: relative;
        width: 525px;
        margin-bottom: 10px;
        .default {
            color: #b4a078;
            position: absolute;
            right: 30px;
            bottom: 20px;
            font-size: 12px;
        }
        &.active {
            border: 2px solid #b4a078;
            padding: 19px 24px;
        }
    }
}

.order-goods-item,
.order-goods-header {
    display: grid;
    grid-template-columns: 1fr 120px 120px 120px 120px;
    text-align: center;
}
.order-goods-header {
    line-height: 40px;
}

.order-goods-item {
    >div {
        padding: 20px 0;
    }
    .goods-info {
        text-align: left;
        display: grid;
        grid-template-columns: 100px 1fr;
        .thumb {
            width: 100px;
            height: 100px;
            img {
                width: 100px;
                height: 100px;
            }
        }
    }
}

.shipping-box,
.payment-box {
    .radio-label {
        label {
            background-color: transparent;
            color: #333;
            border: 1px solid #333;
            min-width: 150px;
            line-height: 40px;
        }
    }
}


.applyed-list {
    thead {
        margin-top: 22px;
        background-color: #F5F5F5;
        tr {
            height: 37px;
            border: 1px solid #eee;
        }
    }
    tr {
        font-size: 12px;
        color: #666;
    }
    tbody {
        tr {
            height: 80px;
            text-align: center;
            border: 1px solid #eee;
            border-top: none;
            border-bottom: none;
        }
    }
}

footer {
    .back-to-top {
        cursor: default;
        display: block;
        text-align: center;
        color: #fff;
        background-color: #626262;
        padding: 15px 0;
        line-height: 19px;
        font-size: 13px;
        &:hover {
            background-color: #485769;
        }
    }
    .footer-top {
        padding-top: 60px;
        padding-bottom: 34px;
        background-color: #fff;
        border-top: 1px solid #e8e8e8;
        .container {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            .top-item {
                text-align: center;
                color: #333;
                padding: 0 37px;
                height: 204px;
                h4 {
                    font-size: 16px;
                    font-weight: 400;
                    margin-bottom: 28px;
                    line-height: 1;
                }
                a {
                    display: inline-block;
                    width: 80px;
                    height: 100px;
                    background-color: #fff;
                    padding-top: 25px;
                    text-align: center;
                    border: 1px solid #E8E8E8;
                    vertical-align: top;
                    font-size: 12px;
                    word-break: break-all;
                    i {
                        font-size: 30px;
                    }
                    p {
                        margin-top: 10px;
                    }
                    &:hover {
                        color: #b4a078;
                    }
                }
                &:not(:first-of-type) {
                    border-left: 1px solid #e9e9e9;
                }
            }
        }
    }
    .footer-main {
        min-height: 204px;
        padding: 37px 0 27px;
        background-color: #414141;
        .top-grid {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            margin-bottom: 30px;
            .top-item {
                color: #fff;
                font-size: 18px;
                line-height: 51px;
                display: inline-block;
                vertical-align: middle;
                text-align: center;
                i {
                    margin-right: 17px;
                    font-size: 35px;
                    display: inline-block;
                    width: 50px;
                    height: 50px;
                    border: 2px solid #fff;
                    border-radius: 50%;
                    padding-top: 6px;
                }
                span {
                    vertical-align: super;
                }
            }
        }
        .footer-info {
            text-align: center;
            color: #999;
            position: relative;
            font-size: 12px;
            line-height: 30px;
            .nav-list {
                a {
                    color: #999;
                }
            }
            .copyright {

            }
        }
    }
    .footer-hr {
        height: 1px;
        margin-bottom: 27px;
        background-color: #4f4f4f;
        border: 0;
    }
}


.app-down-guide {
    width: 100%;
    height: 120px;
    position: fixed;
    bottom: 0;
    background: rgba(0,0,0,.7);
    z-index: 99;
    .content {
        width: $width;
        height: 90px;
        margin: 15px auto;
        position: relative;
        .fa-close {
            position: absolute;
            height: 22px;
            width: 22px;
            border-radius: 50%;
            top: -11px;
            right: -11px;
            cursor: pointer;
            background: #ffff;
            text-align: center;
            line-height: 21px;
        }
    }
}

/** 登录页 **/
.page-box {
    background: #fff;
    .login-box {
        .box-tab {
            margin-top: 32px;
            .tab-item {
                display: none;
                &.active {
                    display: block;
                }
            }
        }
    }
    .register-box {
        display: none;
    }
    .box-main {
        margin: 0 32px;
        .box-header {
            padding: 30px 0 10px;
            display: grid;
            grid-template-columns: 1fr 1fr;
            text-align: center;
            a {
                color: #333;
                &:first-child {
                    border-right: 1px solid #e8e8e8;
                }
                &.active {
                    color: #999;
                    &:hover {
                        color: #B4A078;
                    }
                }
            }
        }
        .btn {
            width: 100%;
            margin: 40px 0 11px;
            background: #b4a078;
            height: 48px;
            line-height: 48px;
            border-radius: 2px;
        }
        .input-hr {
            height: 15px;
            line-height: 16px;
            font-size: 12px;
        }
        .input-group {
            height: 36px;
            border: 1px solid #e8e8e8;
            border-radius: 2px;
            position: relative;
            .fa {
                position: absolute;
                display: block;
                left: 7px;
                top: 7px;
                height: 24px;
                line-height: 24px;
                width: 22px;
                font-size: 20px;
                border-right: 1px solid #e8e8e8;
            }
            input {
                height: 34px;
                width: 100%;
                line-height: 34px;
                padding-left: 44px;
                font-size: 14px;
                background: #fff;
                color: #333;
                border: 0;
                font-weight: normal;
            }
        }
    }
    .box-footer {
        height: 60px;
        background: #F5F3EF;
        padding-right: 25px;
        .login-oauth-box {
            margin: 0 0 0 32px;
            padding-top: 8px;
            height: 50px;
            font-size: 30px;
            float: left;
            a {
                margin: 0 4px;
                color: #999;
                &:hover {
                    color: #B4A078;
                }
            }
        }
    }
}

.login-page {
    width: 100%;
    height: 600px;
    background: center no-repeat;
    .container {
        position: relative;
        .page-box {
            float: right;
            margin-top: 83px;
            width: 386px;
        }
    }
}

.lazy-loading {
    min-height: 256px;
    background-image: url('/assets/images/loading.gif');
    background-repeat: no-repeat;
    background-size: 200px;
    background-position: center;
}